// $Id: networktopologizer.h 40 2004-09-27 08:20:26Z hansemil $
#ifndef NETWORKTOPOLOGIZER_H
#define NETWORKTOPOLOGIZER_H

#include <list>
#include <vector>
#include "node.h"
using namespace std;

/**
 * NetworkTopologizer is the base class for the classes that generates different types of network topologies on a Node STL list.
 * To create a new type of network topology generator, overload this class and handle the Node STL list apropriately.
 * @todo Finish documentation
 */
class NetworkTopologizer {
public:
	NetworkTopologizer(list<Node *> *nodes);
	virtual ~NetworkTopologizer() {}

protected:
	list<Node *> *m_nodes;
	vector<int> nodeKeys;
};

#endif
